Woven cloth is formed by interlacing yarns, typically two sets of orthogonal yarns called warp and weft. Interlaced yarns undergo friction forces at yarn-yarn contacts, and this friction holds together the woven fabric, in contrast to knitted fabrics, which are held together by stitching yarns. Woven cloth is ubiquitous, and it exhibits diverse weave patterns and yarn materials, both stiff and elastic. Common woven fabrics include chiffon, corduroy, denim, flannel, gabardine, sheeting, or velvet.
Large-scale mechanics of woven cloth are dictated by the fine-scale behavior of yarns, their mechanical properties, arrangement, and contact interactions. However, popular cloth models, with the notable exception of the work of Kaldor et al. [2008; 2010], do not model yarn-level mechanics. They use either discrete elements, as in the case of mass-spring systems [Breen et al. 1994, Provot 1995], or discretizations of continuum formulations, as in the case of finite-element models [Etzmuss et al. 2003].
Such discretized models are often sufficient for capturing relevant behavior of woven cloth, in particular draping under moderate forces. But yarn-level models introduce exciting possibilities for computer animation. Visually interesting effects such as detailed tearing, snags, or loose yarn ends require modeling individual yarns. Moreover, yarn-based models can constitute the cornerstone to develop accurate solutions to large-scale cloth simulation, revealing the nonlinearities and complex interplays measured in real fabrics [Wang et al. 2011; Miguel et al. 2012; Miguel et al. 2013].
Computational cost has been the key challenge to address yarn-level cloth simulation. Capturing the mechanics of individual yarns requires the use of rod models [Pai 2002; Spillmann and Teschner 2009; Bergou et al. 2008; Casati and Bertails-Descoubes 2013], and weave patterns produce a number of contacts that is quadratic in the number of yarns. Modeling even low yarn-density fabrics soon leads to an explosion in the number of degrees of freedom (DoFs) and contacts, and common fabrics may contain in the order of 100 yarns/inch.
Most cloth simulation mode is in computer graphics consider cloth as a thin shell and formulate an elastic deformation model to capture its mechanics [Terzopoulos et al. 1987]. Then, cloth modeling faces the challenge of defining deformation energies and discretizations that are numerically robust and match the behavior of real cloth. Some key milestones in cloth modeling in computer graphics include: mass-spring models that approximate the behavior of real woven fabrics [Breen et al 1994], the addition of strain limiting to model inextensibiliy [Provot 1995], efficient handling of self-collisions [Volino et al. 1995], definition of deformation energies from constraints with efficient time integration [Baraff and Witkin 1998], robust models to handle buckling [Choi end Ko 2002], consistent bending models [Bridson et al. 2003; Grinspun et al 2003], efficient inextensibility [Goldenthal et al. 2007], and efficient dynamic remeshing [Narain et al. 2012].
Recent work in computer animation has also aimed to match the nonlinear behavior in real cloth. Relevant works include the design of nonlinear parametric models [Volino et al. 2009], estimation of material coefficients from force and deformation examples [Wang et al. 2011; Miguel et al 2012], and design of internal friction models to capture cloth hysteresis [Miguel et al 2013].
In contrast to popular thin shell models, Kaldor et al. [2008] modeled the dynamics of Knitted cloth at the yarn level, allowing them to predict the large-scale behavior of full garments from fundamental yarn mechanics. They captured the mechanics of individual yarns using an inextensible rod model, and yarn-yarn contact with a combination of stiff penalty forces and velocity-filter friction. Later in [2010], they extended their work to accelerate yarn-yarn contact handling, by using local rotated linearizations of penalty forces. However, the present invention proposes a more efficient solution for the case of woven cloth that avoids altogether handling yarn-yarn contact at yarn crossings. Metaaphanon et al [2009] proposed a yarn-level model for woven cloth. They modeled yarn-yarn interaction by setting constraints between the end points of warp and weft springs. In addition, they designed an automatic transition from a mass-spring model to the yarn-level model.
Yarn-level models have been thoroughly studied in the field of textile research. Yarn-based analytical models [Hearle et al. 1969] were used to predict the mechanical behavior of fabric under specific modes of deformation, usually based on geometric yarn models. These analytical models, such as Peirce's parametric circular cross-section yarns [Peirce 1937] or Kawabata's much simpler pin-joined trusses [Kawabata et al. 1973], model yarns at crossover points assuming persistent contact and accounting for crimp separation. However, as for most analytical models these approaches are limited to the specific cases they were designed for, and developing an analytical framework for general load cases would be extremely complex [King et al. 2005], let alone entire garments.
Mesostructure-based continuum models emerged to simulate larger fabric samples [Boisse et al. 1997; Parsons et al. 2010]. These models approximate woven fabric as a continuum, where every material point represents a section of yarns. Each section is then simulated using a greatly simplified analytic unit cell employing, for instance, Kawabata's pin-joined truss model.
Another family of models attempts to simulate the full fabric at yarn level using finite element discretizations of volumetric yarns, accounting for all yarn interactions [Ng et al 1998; Page and Wang 2000; Duan et al, 2006]. However, the large computational requirements make them intractable for moderately large samples. Greater computational efficiency was achieved by replacing the complex volumetric yarns by simpler elements such as beams, trusses and membranes [Reese 2003; McGlockton et. al. 2003]. Another interesting approach is to resort to costly yarn-level mechanics only when needed, using multiscale models that couple continuum and yarn-level descriptions [Nadler et al. 2006].
Somewhat hybrid techniques rely on mesostructure-based continuum approaches, but using a discrete model for unit cells. These cells allow axial compliance and can be augmented with bending and crossover springs to simulate cross-sectional deformation and shear at crossover points [King et al. 2005; Xia and Nadler 2011]. Shear jamming is achieved by introducing truss elements normal to the yarns to simulate contact forces between the yarns [King et al. 2005], However, since yarns are pinned together at crossover points, these unit-cell approaches prevent yarn sliding. Parsons and collaborators [2013] address yarn sliding by introducing a slip velocity field at the continuum level, with forces computed at meso-level using the unit cell. Slippage friction forces are proportional to the normal forces at the crossover points. However, these approaches usually do not simulate every yarn in the fabric, thus preventing interesting single yarn effects such as snags, frayed edges, yarn fracture and yarn pullouts. In addition, typical yarn-level models in textile research assume persistent contact between woven yarns, but they do not resolve yarn positions under free garment motions, only controlled experiments. By contrast, the approach of the present invention allows to simulate ever yarn in the fabric as a rod, while greatly reducing costly contact interactions by making contact persistent and introducing additional sliding degrees of freedom.
An essential aspect of yarn-level simulation is the choice of rod model to capture the mechanics of individual yarns. Pai [2002] developed an efficient algorithm to simulate rods modeled following Cosserat theory. Spillmann and Teschner [2007] improved on Cosserat models to handle contact efficiently, and later in [2009] they extended them to handle branched and looped structures. Bergou et al. [2008] presented an approach for rod simulation that decouples centerline dynamics from a quasi-static solution of twist based on parallel transport. Casati and Bertais-Descoubes [2013] have recently evolved clothoid-based models to efficiently resolve the dynamics of rich and smooth rods with very few control points.
As outlined before, the major challenge in modeling cloth at the yarn level is efficient contact handling between yarns. Sueda et al. [2011] presents a model suited for simulating efficiently highly constrained rods. The key insight of their model is to describe the kinematics of constrained rods using an optimal set of generalized coordinates, formed by so-called Lagrangian coordinates that capture absolute motion, and so-called Eulerian coordinates that capture sliding on constraint manifolds. This approach fits for representing constrained yarns in woven cloth, so that a discretization for a case not handled by Sueda et al., consisting of two rods in sliding contact, has now been designed.